<template>
	<view class="apply-cash" v-if="!loadding">
		<!--申请成功-->
		<view class="form-wrap f30">
			<form @submit="formSubmit" @reset="formReset">
				<view class="p-0-20 pt30 txje">
					{{ words.cash_apply.words.money.value }}<text class="f26 gray9 ml30">{{ words.cash_apply.words.min_money.value}}</text>
				</view>
				<view class="p-0-20 ">
					<view class="withd-bc">
						<view class="withd-bct">
							<view style="height: 100%;display: flex;align-items: center;">
								<text style="font-size: 48rpx;">￥</text>
								<input class="tx-inpt" name="money" v-model="money" type="text" />
							</view>
						</view>
						<!--
						<view class="withd-bcb">
							{{ words.cash_apply.words.capital.value }}{{agent.agent.money}}元,<text @click="getAll" style="color: #0479FF;">全部提现</text>
						</view>
						-->
					</view>
				</view>
				<view class="p20 f32 gray3 txbt">提现方式</view>
				<view class="form-item p20">
					<view class="ww100">
						<template v-if="hasType('10')">
							<view class="p-30-0 border-b">
								<view class="d-b-c" :class="withdraw_type==10?'active':''" @click="TabType(10)">
									<view class="d-s-c flex-1">
										<image style="width: 28rpx;height: 28rpx;margin-right: 22rpx;" src="/static/wx.png" mode=""></image>
										<text class="f26 gray3">微信支付</text>
									</view>
									<text class="icon iconfont icon-xuanze"></text>
								</view>
							</view>
						</template>
						<template v-if="hasType('20')">
							<view class="p-30-0 border-b">
								<view class="d-b-c" :class="withdraw_type==20?'active':''" @click="TabType(20)">
									<view class="d-s-c flex-1">
										<image style="width: 28rpx;height: 28rpx;margin-right: 22rpx;" src="/static/zfb.png" mode=""></image>
										<text class="f26 gray3">支付宝</text>
									</view>
									<text class="icon iconfont icon-xuanze"></text>
								</view>
								<template v-if="withdraw_type==20">
									<view class="mt20">
										<input class="p20 border-tb" name="alipay_name" type="text" value="" placeholder-class="grary" placeholder="请输入姓名" />
									</view>
									<view class="mt20">
										<input class="p20 border-tb" name="alipay_account" type="text" value="" placeholder-class="grary" placeholder="请输入支付宝账号" />
									</view>
								</template>
							</view>
						</template>
						<template v-if="hasType('30')">
							<view class="p-30-0 border-b">
								<view class="d-b-c" :class="withdraw_type==30?'active':''" @click="TabType(30)">
									<view class="d-s-c flex-1">
										<image style="width: 28rpx;height: 22rpx;margin-right: 22rpx;" src="/static/yinxingqia.png" mode=""></image>
										<text class="f26 gray3">银行卡</text>
									</view>
									<text class="icon iconfont icon-xuanze"></text>
								</view>
								<template v-if="withdraw_type==30">
									<!--
									<view class="mt20">
										<input class="p20 border-tb" name="bank_account" type="text" value="" placeholder-class="grary" placeholder="请输入姓名" />
									</view>
									<view class="mt20">
										<input class="p20 border-tb" name="bank_name" type="text" value="" placeholder-class="grary" placeholder="请输入开户行名称/地址" />
									</view>
									<view class="mt20">
										<input class="p20 border-tb" name="bank_card" type="text" value="" placeholder-class="grary" placeholder="请输入银行卡号" />
									</view>
									-->
									<!-- 银行名称 -->
									<view class="form-item-select">
									  <picker mode="selector" :range="bankNames" @change="onBankChange" style="width: 100%;">
									    <text class="arrow-input">
									      {{ selectedBankName || '请选择银行名称' }}
									    </text>
									  </picker>
									</view>
								</template>
							</view>
						</template>
					</view>
				</view>
				<view class="d-c-c mt60" style="border: 16rpx solid #F2F2F2">
					<button type="primary" class="btn-red flex-1" form-type="submit">{{ words.cash_apply.words.submit.value }}</button>
				</view>
			</form>

		</view>

	</view>
</template>

<script>
	export default {
		components: {},
		data() {
			return {
				loadding: true,
				/*是否加载完成*/
				indicatorDots: true,
				autoplay: true,
				interval: 2000,
				duration: 500,
				/*支付类别*/
				withdraw_type: 10,
				isData: false,
				agent: {},
				payType: [],
				words: {},
				/*小程序订阅消息*/
				temlIds: [],
				money: '',
				selectedBank: null, // 选中的银行对象，初始化为 null
				banks: [], // 银行数据
				bank_id:0,
				selectedBankName:''
			}
		},
		mounted() {
			/*获取数据*/
			this.getData();
			this.getBankData();
		},
		computed: {
		  // 提取银行名称列表
		  bankNames() {
		    return this.banks.map((bank) => bank.bank_name+':'+bank.card_no);
		  },
		},
		methods: {
			onBankChange(event) {
			  // 根据用户选择的索引获取对应的银行对象
			  const index = event.detail.value;
			  this.selectedBank = this.banks[index];
			  this.selectedBankName = this.selectedBank.bank_name+':'+this.selectedBank.card_no;
			  this.bank_code = this.selectedBank.bank_code;
			  this.bank_id = this.selectedBank.id;
			},
			/*获取数据*/
			getBankData() {
				let self = this;
				let page = self.page;
				let list_rows = self.list_rows;
				self.loading = true;
				self._get(
					'user.user/banklists', {
						page: page || 1,
						list_rows: 30,
					},
					function(data) {
						self.loading = false;
						self.banks = data.data.list.data;
					}
				);
			},
			/*获取数据*/
			getData() {
				let self = this;
				uni.showLoading({
					title: '加载中'
				});
				self.loadding = true;
				self._get('user.agent/cash', {
					platform: self.getPlatform()
				}, function(res) {
					self.agent = res.data;
					self.words = res.data.words;
					self.payType = self.agent.settlement.pay_type;
					self.agent.isData = true;
					self.temlIds = res.data.template_arr;
					self.loadding = false;
					uni.hideLoading();
				});
			},

			/*切换提现方式*/
			TabType(e) {
				this.withdraw_type = e;
			},

			/*判断是否存在*/
			hasType(e) {
				if (this.payType.indexOf(e) != -1) {
					return true;
				} else {
					return false;
				}
			},
			getAll() {
				this.money = this.agent.agent.money;
			},
			
			formSubmit:function(e){
				let self = this;
				uni.showModal({
				  title: '确认提交',
				  content: '提交不可撤回，请再次确认！',
				  success: (res) => {
				    if (res.confirm) {
				      console.log('用户点击确认');
					  self.formSubmitQ(e);
				      // 执行确认后的逻辑
				    } else if (res.cancel) {
				      console.log('用户点击取消');
				      // 执行取消后的逻辑
					  uni.showToast({
					    title: '您取消申请！', // 提示的内容
					    icon: 'error',  // 图标类型，支持 "success"、"loading"、"none"
					    duration: 2000    // 提示显示的时间，单位为毫秒
					  });
				
				    }
				  },
				});
			},
			
			/*申请*/
			formSubmitQ: function(e) {
				let self = this;
				var formdata = e.detail.value;
				formdata.pay_type = self.withdraw_type;
				formdata.bank_id = self.bank_id;
				var data = JSON.stringify(formdata);
				let callback = function() {
					uni.showLoading({
						title: '正在提交',
						mask: true
					})
					self._post('plus.agent.cash/submit', {
						data: data
					}, function(data) {
						uni.hideLoading();
						uni.showToast({
							title: '申请成功',
							duration: 2000,
							icon: 'success'
						});
						uni.navigateBack(-1);
					});
				}
				self.subMessage(self.temlIds, callback);
			},
		}
	}
</script>

<style>
	page {
		background-color: #F2F2F2;
	}
	.arrow-input {
	  display: block; /* 确保占满宽度 */
	  width: 100%; /* 设置宽度 100% */
	  padding: 10px; /* 内边距 */
	  border: 1px solid #ccc; /* 边框 */
	  /*border-radius: 5px; /* 圆角 */
	  font-size: 14px;
	  color: #000000;
	  box-sizing: border-box; /* 包含 padding 和 border */
	}
	.form-item-select {
	  display: flex;
	  align-items: center;
	  margin-bottom: 15px;
	  width: 100%; /* 父容器宽度 100% */
	  margin-top: 15px;
	}
	.txje {
		font-size: 32rpx;
		font-family: PingFang SC;
		font-weight: 500;
		color: #333333;
		margin-top: 16rpx;
	}

	.apply-cash {
		/* padding-top: 16rpx; */
	}

	.form-wrap {
		/* border-radius: 20rpx; */
		background: #FFFFFF;
		/* box-shadow: 0 0 16rpx 0 rgba(0, 0, 0, .2); */
	}

	.form-item {
		margin-bottom: 20rpx;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		font-size: 28rpx;
	}

	.form-item .field-name {
		width: 140rpx;
	}

	.form-item input {
		font-size: 28rpx;
	}

	.txbt {
		border-top: 16rpx solid #F2F2F2;

	}

	.form-item .text-price {
		padding: 0 10rpx;
		height: 80rpx;
		line-height: 80rpx;
		border-radius: 40rpx;
		border: 1px solid #CCCCCC;
	}

	.agreement-content {
		max-height: 60vh;
		overflow-y: auto;
	}

	.iconfont.icon-xuanze {
		font-size: 30rpx;
	}

	.form-item .active .iconfont.icon-xuanze {
		color: #FF5649;
	}

	.apply-cash .btn-red {
		height: 88rpx;
		line-height: 88rpx;
		border-radius: 44rpx;
		background: #FF5649;
		border-color: #FF5649;
		border: none;
		font-size: 32rpx;
	}

	.withd-b {
		background-color: #FFFFFF;
		margin-bottom: 97rpx;
	}

	.withd-bct {
		height: 92rpx;
		padding-top: 59rpx;
		padding-right: 49rpx;
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-bottom: 1rpx solid #d0d0d0;
	}

	.tx-inpt {
		background-color: #FFFFFF;
		font-size: 48rpx;
		line-height: 92rpx;
	}

	.withd-bcb {
		font-size: 26rpx;
		color: #999999;
		padding: 27rpx 0 49rpx 0;
	}

	.withdrawal-btn {
		margin: 0 30rpx;
		background-color: #f36a24;
		height: 60rpx;
		line-height: 60rpx;
		color: #FFFFFF;
		text-align: center;
		border-radius: 30rpx;
		padding: 0;
		font-size: 24rpx;
	}
	.border-tb{
		border: none;
		border-top: 1rpx solid #eeeeee;
		border-bottom: 1rpx solid #eeeeee;
	}
</style>
